package com.example.demo.entity;

import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author kaixuan.xu
 * @version 1.0.0
 * @date 2018/12/12 19:19
 * @description
 */
@Entity
@Table(name = "task_order")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Order extends BaseEntity {

  private static final long serialVersionUID = 4625995660531393859L;

  @Id
  @GeneratedValue(strategy = GenerationType.IDENTITY)
  @Column(name = "id")
  private Long id;

  @Column(name = "task_id")
  private Long taskId;

  @Column(name = "person_id")
  private Long personId;

  @Column(name = "status")
  private Integer status;

  @Column(name = "pay_fee")
  private BigDecimal payFee;

  @Column(name = "balancing_date")
  private Date balancingDate;

  @Column(name = "pay_date")
  private Date payDate;

  @Column(name = "estimate_tax")
  private Date estimateTax;

  @Column(name = "finish_date")
  private Date finishDate;

  @Transient
  private String companyName;

  @Transient
  private String taskName;

  @Transient
  private Date taskStartDate;

  @Transient
  private Date taskEndDate;

  @Transient
  private String personName;

  public Long getId() {
    return id;
  }

  public void setId(Long id) {
    this.id = id;
  }

  public Long getTaskId() {
    return taskId;
  }

  public void setTaskId(Long taskId) {
    this.taskId = taskId;
  }

  public Long getPersonId() {
    return personId;
  }

  public void setPersonId(Long personId) {
    this.personId = personId;
  }

  public Integer getStatus() {
    return status;
  }

  public void setStatus(Integer status) {
    this.status = status;
  }

  public BigDecimal getPayFee() {
    return payFee;
  }

  public void setPayFee(BigDecimal payFee) {
    this.payFee = payFee;
  }

  public Date getPayDate() {
    return payDate;
  }

  public void setPayDate(Date payDate) {
    this.payDate = payDate;
  }

  public Date getFinishDate() {
    return finishDate;
  }

  public void setFinishDate(Date finishDate) {
    this.finishDate = finishDate;
  }

  public String getCompanyName() {
    return companyName;
  }

  public void setCompanyName(String companyName) {
    this.companyName = companyName;
  }

  public String getTaskName() {
    return taskName;
  }

  public void setTaskName(String taskName) {
    this.taskName = taskName;
  }

  public Date getTaskStartDate() {
    return taskStartDate;
  }

  public void setTaskStartDate(Date taskStartDate) {
    this.taskStartDate = taskStartDate;
  }

  public Date getTaskEndDate() {
    return taskEndDate;
  }

  public void setTaskEndDate(Date taskEndDate) {
    this.taskEndDate = taskEndDate;
  }

  public String getPersonName() {
    return personName;
  }

  public void setPersonName(String personName) {
    this.personName = personName;
  }
}
